import api from '../../api/api.js';
import config from '../../api/config.js';
Page({
  data: {
    tel: '', // 存储手机号
    pass: '', // 存储密码
    isChecked: false, // 用户协议复选框的选中状态
  },
  onLoad() {
    // 获取本地存储中的用户信息
    const userInfo = wx.getStorageSync('userInfo');
    console.log(userInfo);
    if (userInfo) {
      // 如果用户信息存在，则直接进入首页
      this.setData({
        nickname: userInfo.nickname,
        tel: userInfo.tel,
        imgUrl: userInfo.imgUrl,
        pass: userInfo.pass
      });
      // 自动跳转到首页
      wx.switchTab({
        url: '/pages/home/home',
      });
    }
  },
  // 账号密码验证方法
  validateLogin: function () {
    const tel = this.data.tel.trim();
    const pass = this.data.pass.trim();
    const isChecked = this.data.isChecked;
    // 判断手机号是否为空
    if (!tel) {
      wx.showToast({
        title: '请输入手机号！',
        icon: 'none',
      });
      return;
    }

    // 判断密码是否为空
    if (!pass) {
      wx.showToast({
        title: '请输入密码！',
        icon: 'none',
      });
      return;
    }
    if (isChecked == false) {
      wx.showToast({
        title: '请勾选用户协议！',
        icon: 'none',
      });
      return;
    }

    // 检查手机号格式（11位手机号）
    const telPattern = /^1[3-9]\d{9}$/;
    if (!telPattern.test(tel)) {
      wx.showToast({
        title: '请输入有效的11位手机号！',
        icon: 'none',
      });
      return;
    }

    // 判断用户是否勾选用户协议


    // 请求登录接口
    api.wxLogin({
      tel: tel, // 手机号
      pass: pass, // 密码
    }).then(response => {
      // 登录成功后的处理
      console.log('登录成功', response);

      // 判断返回的code是否为1，表示登录成功
      if (response.code === 1) {
        wx.showToast({
          title: '登录成功！',
          icon: 'success',
        });
        wx.setStorageSync('userInfo', {
          imgUrl: this.data.imgUrl,
          nickname: this.data.nickname,
          tel: this.data.tel,
          pass: this.data.pass
        });
        console.log('登录成功', response);

        // 保存用户信息
        wx.setStorageSync('session_id', response.data.id);
        wx.setStorageSync('openid', response.data.openid);
        wx.setStorageSync('userImg', response.data.img);
        wx.setStorageSync('sex', response.data.sex);
        wx.setStorageSync('nickName', response.data.nickname);

        // 登录成功后跳转页面
        setTimeout(() => {
          // 如果是 tabBar 页面，可以使用 wx.switchTab
          wx.switchTab({
            url: '/pages/home/home',
          });
          // 如果不是 tabBar 页面，使用 wx.navigateTo
          // wx.navigateTo({
          //   url: '/pages/goods-list/index',
          // });
        }, 1500);
      } else {
        wx.showToast({
          title: res.data.msg || '登录失败！',
          icon: 'none',
        });
        console.log('登录失败', res.data);
      }
      // 可以将token保存到本地存储中
    }).catch(error => {
      // 登录失败后的处理
      console.error('登录失败', error);
    });


  },

  // 绑定手机号输入框数据
  onInputTel: function (e) {
    this.setData({
      tel: e.detail.value,
    });
  },

  // 绑定密码输入框数据
  onInputPass: function (e) {
    this.setData({
      pass: e.detail.value,
    });
  },

  // 监听用户协议复选框的勾选状态
  checkboxChange: function (e) {
    // e.detail.value 会返回一个包含已勾选项值的数组
    console.log('勾选状态变化', e);
    let status = !this.data.isChecked
    this.setData({
      isChecked: status, // 判断是否勾选用户协议
    });
    console.log('用户协议勾选状态:', this.data.isChecked);
  },
  login: function () {
    wx.navigateTo({
      url: '/pages/login/login'
    });
  },
  // 点击用户协议文本时，切换复选框的勾选状态
  toggleAgreement: function () {
    this.setData({
      isChecked: !this.data.isChecked, // 切换复选框状态
    });
  },
});